home *** CD-ROM | disk | FTP | other *** search
Text File | 1996-04-25 | 3.1 KB | 95 lines | [TEXT/MPS ] |
- //========================================================================================
- //
- // File: ScrollEd.h
- // Release Version: $ ODF 1 $
- //
- // Author: Laurent Delamare
- //
- // Copyright: (c) 1993 - 1996 by Apple Computer, Inc., all rights reserved.
- //
- //========================================================================================
-
- #ifndef SCROLLED_H
- #define SCROLLED_H
-
- #ifndef DEFINES_K
- #include "Defines.k"
- #endif
-
- #ifndef FWEDVIEW_H
- #include "FWEdView.h"
- #endif
-
- //==============================================================================
- // Forward Declarations
- //==============================================================================
-
- class FW_CScrollBar;
- class FW_CNotification;
-
- //==============================================================================
- // class CScrollEdit
- //==============================================================================
- // CScrollEdit adds scrolling & undo functionalities to FW_CEditView.
- // See CScrollEdit's documentation at the top of the .cpp file
-
- class CScrollEdit : public FW_CEditView, public FW_MReceiver
- {
- public:
- FW_DECLARE_CLASS
- FW_DECLARE_AUTO(CScrollEdit)
-
- // 1 step constructor
- CScrollEdit(Environment* ev,
- FW_CSuperView* container,
- ODID viewId,
- const FW_CRect& bounds,
- FW_CScrollBar* horzSB,
- FW_CScrollBar* vertSB,
- const FW_CString& text,
- const FW_CFont& font = FW_kNormalFont,
- short maxChars = FW_MAXINT16,
- unsigned short attributes = FW_CEditView::kDrawBox +
- FW_CEditView::kWordWrap +
- FW_CEditView::kAutoScroll,
- FW_Fixed textWidth = FW_kFixed0);
-
- // 2 steps constructor
- CScrollEdit(Environment* ev);
-
- virtual ~CScrollEdit();
-
- // ----- New API
- void UpdateScrollParameters(Environment* ev);
- void UpdateScrollUnits(Environment* ev);
- void AdjustTE(Environment* ev);
- void AdjustTERects(Environment* ev);
- void AdjustScrollbar(Environment* ev, FW_XYSelector direction);
- void Initialize(Environment* ev);
-
- // ----- Inherited API
- virtual FW_Boolean DoAdjustMenus (Environment *ev, FW_CMenuBar* menuBar,
- FW_Boolean hasMenuFocus, FW_Boolean isRoot);
- virtual FW_Boolean DoMenu (Environment* ev, const FW_CMenuEvent& event);
- virtual FW_Boolean DoMouseDown (Environment* ev, const FW_CMouseEvent& event);
- virtual FW_Boolean DoVirtualKey (Environment* ev, const FW_CVirtualKeyEvent & event);
- virtual FW_Boolean DoCharKey (Environment* ev, const FW_CCharKeyEvent& event);
- virtual void HandleNotification(Environment* ev, const FW_CNotification& notification);
- virtual void SizeChanged (Environment* ev, const FW_CPoint& oldSize);
- virtual void SetText (Environment * ev, const FW_CString& str);
-
- // ----- Archiving -----
- static void* Create(FW_CReadableStream& stream, FW_ClassTypeConstant type);
- static void Destroy(void* object, FW_ClassTypeConstant type);
- virtual void Flatten(Environment* ev, FW_CWritableStream& stream) const;
- virtual void InitializeFromStream(Environment* ev, FW_CReadableStream& stream);
-
- private:
- FW_CScrollBar* fScrollbars[2]; // vert & horz scrollbars (may be NULL)
- FW_Fixed fWidth; // text width
- };
-
-
-
- #endif
-